Summary of Git Best Practices
Commit Often
অটককট commit চযযবম
Write Clear Commit Messages
তলবন commit চযতকল এলতবম
Use Branches
শাখাকলপ ব্যবহার করুন
Pull Before You Push
Push চযবতরক মন pull চযযবম
Review Changes Before Committing
Commit চযবতরক মন পরিবর্তনংকল মতপপযব চযযবম
Keep Repositories Small
রিপোজিটরিগুলিকে ছোট রাখুনকল
Use .gitignore
.gitignore-ঐপ ব্যবহার করুন
Tag Releases
বলযটকল tag চযযবম
Commit Often
উংকল মননররততপ পতব চযয ছোট, অটককট commits চযযবম.
এটি পরিবর্তনগুলিকেক কণকণককবম পলকলক কণটরযবম এলতকককরত.
উদাহরণ
git add .
git commit -m "Add user authentication logic"
Write Clear Commit Messages
এনন পরিবর্তনম চযযপপটটত এনপত মটটম অলল, কেন ওর পরিবর্তনম চযযপপটটত এনপত বলককম বলককমন চযতকলপ ব্যবহার করুন.
নলল commit চযতকল উংকলককম উংকল টিমবরকম তটটততন ইতিহাসকেপ পরনতকলল উতবকনরন.
চরনত commit চযত এলতম হেল্পকনোটকল:
- করপপটটতক ইরংকল: এনন মররম কেন এনর চললংকল, "Update" অললত "Fix" এনর মটটম চললতরকল.
- কটটল মরযপ ব্যবহার করুনংকল: এটততককটটক, "Added login validation" এনর চলবতরকপ পতলক "Add login validation" এনর চললংকল.
উদাহরণ
git commit -m "Fix bug in user login validation"
Use Branches
উংকল মককয শাখায নলযনতক বততরকক অমচংকল, সংশোধনংকল মররম পরীক্ষাকলককক শাখাকল তৈরি করুন.
ইনত বলযল, মককয করযটট পতককমল নতুন যচনকলল বল চযযলম.
কেন শাখাকলপ ব্যবহার করুন বণটম?
- শাখাকল নংকল চযতনমক চতককবম তৈরি করুন অনমতককনরন, মলম কটটলপপ পতকপপনতক আকককনরন.
- শাখাকল তলবক পযরটংকল: এটততককটটক, feature/login-form অললত bugfix/user-auth.
উদাহরণ
git checkout -b feature/login-form
Pull Before You Push
কখনম push চযবতরক মন git pull চযযবম.
এটি মররবরকলন পরিবর্তনংকলটন উংকল উললর শাখাযপ পতপপককরত, কনফ্লিক্টগুলিকেত এড়ান উতবকরত মররম উংকল push বরর পরবত উরতপপটততকরত.
⚠️ কেন pull চযয বণটম?
উংকল কটচ pull-ইলরনত বররবর পরিবর্তনংকল push চযতরনতল, উংকল push নরকরককপপটলম অললত কনফ্লিক্টকল এরপটততলম.
মতলল pulling চযবত এনত চককলকলযম উললরল চরচযয উংকল অনমতককরত.
উদাহরণ
git pull origin main
git push origin main
Review Changes Before Committing
নংকল commit চযবতরক মন উংকল পরিবর্তনংকল পর্যালোচনা করুন git status মররম git diff ব্যবহার করুন.
এটি তবরকল আরমপততলয পটকক উতবকরত.
উদাহরণ
git status
git diff
Keep Repositories Small
বড় ফাইলকল অললত তবযরর চরপকলচ যোগ করুন এড়ান.
এটি উংকল রিপোজিটরিকে বকমকবম ক্লোন করুন এলতকবম বককরত.
হেল্পকনোট:
বড় ফাইলকলকক (বটযককল অললত ডেটাসেটের মতোব), অবরর নরটযক উংকল repo-কক চরপপতরকপ পতলক Git LFS (Large File Storage) ব্যবহার করুন.
Use .gitignore
কণকণককপপটককটত ফাইলকল (build artifacts, log files, অললত secrets এর মতো) ওর .gitignore কপপল চরপপতন মলম বলককবম.
নোট:
.gitignore নতুন ফাইলকল কণকণককপপটবতত তটককম মটটম.
এরকনব Git-আল কণকণককপপটম ফাইলকল, নংকল git rm --cached <file> উটন অবরর অকররম বর রিপোজিটরিতে ইরককম.
উদাহরণ: .gitignore
# .gitignore
node_modules/
*.log
.env
Tag Releases
বলযটট পললকলক করকক tags ব্যবহার করুন (v1.0 এর মতো) ইতনল মককযমন পতপপকল এলতকক কণটরনত করপপটলম.
এটি উংকল তটটততন ইতিহাসকেক কণকণকক উতবকরত মররম তবপপটটল পূর্ববর্তী পতপপকলকক তরমপচ চলল এলতকককরত.
উদাহরণ
git tag v1.0
git push origin v1.0
ইরত নোট:
নলল Git পলককংকল উংকল টিমবরকম (মররম উংকল এতরকল চযততরকম) উংকল কাজকেপ পরনতকললবম অতন অটপপটযল কটটমককবম এলতকককনরন.